function chooseMap(){
    jQuery("#choose_map").show();
    if(initialized != true) initMap();
}

function addImage() {
    if(jQuery("#page_add_image").attr("src")!="manage_image_upload.html")
        jQuery("#page_add_image").attr("src", "manage_image_upload.html");
    jQuery("#popup_wrapper_add_image").show('fast');
}

function removeImage(id, self) {
    var wrapper = jQuery(self).parent();
    var images = jQuery("#images");
    var img_val = images.val();
    if(img_val)
        if(img_val==id)
            images.val("");
        else {
            var img_ids = img_val.split(",");
            var img_index = img_ids.indexOf(id.toString());
            if(img_index!=-1) {
                img_ids.splice(img_index,1);
                images.val(img_ids.join());
            }
        }
    wrapper.hide("slow", function(){
        jQuery(this).remove();
    });
    var listDelete = jQuery('#imagesDelete');
    if (listDelete.val()){
        listDelete.val(listDelete.val() + ',' + id);
    }else {
        listDelete.val(id);
    }
}

function insertImage(imgs) {
    var images = jQuery("#images");
    var img_val = images.val();
    if(img_val)
        var img_ids = img_val.split(",");
    else
        var img_ids=[];
    for(k in imgs) {
        img_ids.push(imgs[k]['id']);
        var contentImage = '<div class="hotel_image" dataImage="' + imgs[k]['id'] + '" id="image_'+ imgs[k]['id'] +'">'+
            '<a class="hotel_image_delete" href="javascript:void(0);" onclick="removeImage('+imgs[k]['id']+', this);" title="Xóa">Xóa</a>'+
            '<a class="hotel_image_default" href="javascript:void(0);" onclick="setDefaultImage('+imgs[k]['id']+');" title="Đặt làm đại diện">Đặt làm đại diện</a>'+
            '<img src="'+imgs[k]['url']+'" width="150px">'+
            '<input type="text" value="'+imgs[k]['name']+'" name="imageName[' +imgs[k]['id']+']">'+
            '</div>';
        if(jQuery(".hotel_image").length > 0) {
            jQuery("#images_wrapper .hotel_image:last").after(contentImage);
        }else {
            jQuery("#images_wrapper").append(contentImage);
        }
    }
    images.val(img_ids.join());
    jQuery("#page_add_image").attr("src", "manage_image_upload.html");
    jQuery("#popup_wrapper_add_image").hide('fast');
}

function setDefaultImage(id){
    console.log('set image ok');
    jQuery('#imageDefault').val(id);
    $(".hotel_image").css("boxShadow","");
    $("#image_"+id).css("boxShadow","2px 2px 2px 2px #000");
}

jQuery(document).ready(function(){
    /* auto complate search */
    var keyword = $("#keyword"),
        keywordVal = "";
    keyword.on("click",function(e){
        e.stopPropagation();
    });
    keyword.on("keydown",function(e){
        keywordVal = keyword.val();
        var getKey = e.keyCode ? e.keyCode : e.which;
        var sys_lst_suggestion = null,
            getChildrend = null,
            getLiVal = null;
        switch (getKey) {
            case arrKeyCode.DOWN:
                sys_lst_suggestion = $("#sys_lst_suggestion");
                if (sys_lst_suggestion.length > 0) {
                    if(sys_lst_suggestion.is(":visible")){
                        getChildrend = sys_lst_suggestion.children(".active");
                        sys_lst_suggestion.children().removeClass("active");
                        getLiVal="";
                        // Nếu chưa có li nào actice thì active cho thằng đầu tiên
                        if (getChildrend.length <= 0){
                            getLiVal = sys_lst_suggestion.children(":first-child").addClass("active").text();
                            keyword.val(getLiVal);
                        }else{
                            // nếu có thằng active thì next active đến thằng tiếp theo
                                // kiểm tra xem thằng đang active có phải là li cuối cùng ko
                                // nếu ko phải thì next
                            if (getChildrend.next().length > 0) {
                                getLiVal = getChildrend.next().addClass("active").text();
                                keyword.val(getLiVal);
                            }else{
                                //Nếu phải thì thay lại keyword ban đầu
                                keyword.val(keyword.attr("data-val-tmp"));
                            }
                        }
                    }
                }
                e.preventDefault();
                break;
            case arrKeyCode.ENTER:
                sys_lst_suggestion = $("#sys_lst_suggestion");
                if(sys_lst_suggestion.is(":visible")) {
                    sys_lst_suggestion.hide();
                }else{
                    $('#btn-search').trigger('click');
                }
                break;
            case arrKeyCode.LEFT:
                break;
            case arrKeyCode.RIGHT:
                break;
            case arrKeyCode.UP:
                sys_lst_suggestion = $("#sys_lst_suggestion");
                if (sys_lst_suggestion.length > 0) {
                    if(sys_lst_suggestion.is(":visible")){
                        getChildrend = sys_lst_suggestion.children(".active");
                        sys_lst_suggestion.children().removeClass("active");
                        getLiVal="";
                        // Nếu chưa có li nào actice thì active cho thằng đầu tiên
                        if (getChildrend.length <= 0){
                            getLiVal = sys_lst_suggestion.children(":last-child").addClass("active").text();
                            keyword.val(getLiVal);
                        }else{
                            // nếu có thằng active thì next active đến thằng tiếp theo
                                // kiểm tra xem thằng đang active có phải là li cuối cùng ko
                                // nếu ko phải thì next
                            if (getChildrend.prev().length > 0) {
                                getLiVal = getChildrend.prev().addClass("active").text();
                                keyword.val(getLiVal);
                            }else{
                                keyword.val(keyword.attr("data-val-tmp"));
                            }
                        }
                    }
                }
                e.preventDefault();
                break;
            default:
                delaySomethings(function(){
                    keywordVal = keyword.val();
                    if (keywordVal == '' ){
                        if($("#sys_lst_suggestion").length > 0) {
                            $("#sys_lst_suggestion").hide();
                        }
                    }
                    else{
                        keyword.attr("data-val-tmp", keywordVal);
                        $.ajax({
                            type:"GET",
                            url:"ajax.php?act=home&code=get_autocomplete",
                            data:{
                                keyword:keywordVal
                            },
                            dataType:"json",
                            async:false,
                            success:function (data_res) {
                                lstSearchSuggest = data_res;
                                if (data_res.length > 0) {
                                    if($("#sys_lst_suggestion").length > 0) {
                                        $("#sys_lst_suggestion").remove();
                                    }
                                    var ul_html_suggest = $(html_suggest).insertAfter(keyword);
                                    ul_html_suggest.css({
                                        "display":"block",
                                        "top":keyword.outerHeight(),
                                        "left":0,
                                        "width":keyword.outerWidth() - 2
                                    });
                                    $.each(data_res, function (idx, val) {
                                        $('<li>' + val + '</li>').appendTo(ul_html_suggest).click(function(e){
                                            keyword.val($(this).text());
                                            ul_html_suggest.hide();
                                            e.stopPropagation();
                                        });
                                    });
                                    $("body").on("click",function(){
                                        ul_html_suggest.hide();
                                        $("body").off("click");
                                    })
                                }
                            },
                            error:function (XMLHttpRequest, textStatus, errorThrown) {
                                console.log("loi ajax");
                                console.log(textStatus);
                            }
                        });
                    }
                },200);
                break;
        }
    });


    jQuery(".save_button").click(function(){
        if ($("#hotel_name").val()=='' && $("#hotel_provider_id").val()==''){
            $.msgBox({
                title:"Error",
                content:"Bạn cần điền tên khách sạn và id nhà cung cấp !"
            });
            return false;
        }else if($("#hotel_name").val()==''){
            $.msgBox({
                title:"Error",
                content:"Bạn cần điền tên khách sạn !"
            });
            return false;
        }else if($("#hotel_provider_id").val()==''){
            $.msgBox({
                title:"Error",
                content:"Bạn cần điền id nhà cung cấp !"
            });
            return false;
        }else{
            return true;
        }
    });

//add image
    jQuery("#overlay_add_image, #button_cancel_add_image").click(function(){
    jQuery("#popup_wrapper_add_image").hide('fast');
});

    jQuery("#button_add_image").click(function(){
        var listName = jQuery("#page_add_image").contents().find('.image_name');
        for(var i = 0; i<listName.length; i++) {
            if (jQuery(listName[i]).val() == ''){
                alert("Bạn cần nhập hết tên của ảnh!");
                return false;
            }
        }

        jQuery("#page_add_image").contents().find("#ManageImageUploadForm").submit();
//    document.getElementById("page_add_image").contentWindow.insertImage();
    });
    jQuery( "#images_wrapper" ).sortable({
        items: 'div.hotel_image',
        update: function(event, ui) {
            var hotel_image = jQuery('div.hotel_image');
            var listId = '';
            for(var i = 0; i<hotel_image.length; i++) {
                listId += jQuery(hotel_image[i]).attr('dataimage');
                if (i+1 != hotel_image.length){
                    listId += ',';
                }
            }
            jQuery('#images').val(listId);
        }
    });
    jQuery("select[name=city_id]").each(function(){
        var self = jQuery(this);
        var parent = self.val();
        var child = jQuery("#"+self.attr("datachild"));
        var child_selected_id = self.attr("datachildselected");
        var data = jQuery.parseJSON(self.attr("datachildren"));
        for(var key in data){
            if(data[key].id_citiesfather==parent){
                if(data[key].id==child_selected_id){
                    child.append("<option selected value=\"" + data[key].id  + "\">" + data[key].name + "</option>");
                }else{
                    child.append("<option value=\"" + data[key].id  + "\">" + data[key].name + "</option>");
                }

            }
        }
    }).change(function(){
            var self = jQuery(this);
            var parent = self.val();
            var child = jQuery("#"+self.attr("datachild"));
            child.find("option[value!=0]").remove();
            var data = jQuery.parseJSON(self.attr("datachildren"));
            for(var key in data){
                if(data[key].id_citiesfather==parent)
                    child.append("<option value=\"" + data[key].id  + "\">" + data[key].name + "</option>");
            }
        });

    if($("input[name=policy_price]:checked").val()==1){
        $("#policy_price_percent").show();
        $("input[name=policy_price][value='0']").parent().css('color',"#bfbfbf");
        $("input[name=policy_price][value='1']").parent().css('color',"#333333");
    }else{
        $("#policy_price_percent").hide();
        $("input[name=policy_price][value='1']").parent().css('color',"#bfbfbf");
        $("input[name=policy_price][value='0']").parent().css('color',"#333333");
    }
    jQuery( "input[name=policy_price]" ).change(function(){
        var self = jQuery(this);
        if(self.val() == "1"){
            $("#policy_price_percent").show();
            $("input[name=policy_price][value='0']").parent().css('color',"#bfbfbf");
            $("input[name=policy_price][value='1']").parent().css('color',"#333333");
        }else{
            $("#policy_price_percent").hide();
            $("input[name=policy_price][value='1']").parent().css('color',"#bfbfbf");
            $("input[name=policy_price][value='0']").parent().css('color',"#333333");
        }
    });

    jQuery(".sys_feature_select_all").click(function() {
        var self = jQuery(this);
        var check = self.attr("data-check");
        var group_id = self.attr("data-group-id");
        if(jQuery.type(group_id) === "undefined") group_id = "";
        if(check==1) {
            jQuery("#ManageHotelForm input:checkbox[name^=chb_features_"+ group_id+ "]").attr("checked", "checked");
        } else {
            jQuery("#ManageHotelForm input:checkbox[name^=chb_features_"+ group_id+ "]:checked").removeAttr("checked");
        }
    });
});